#!/usr/bin/env python
# -*-coding:UTF-8 -*-
'''
@Project ：爬虫-波波老师
@File：10-bs4本地加载.py
@Author ：文非
@Date：2021/3/1020:32
'''

from bs4 import BeautifulSoup

if __name__ == "__main__":
    # 将本地的html文档中的数据加载到该对象中
    fp = open("./test.html","r",encoding="utf-8")
    # BeautifulSoup对象的实例化
    soup = BeautifulSoup(fp,"lxml") # 方法中的两个参数 参数2lxml是固定的 参数1 是一个文件描述符
    # soup.tagName # soup 后面加标签的名称
    print(soup.div) # soup.tagName  返回的html中第一次出现的tagName标签，返回单数
    print("\n")
    print(soup.find("div")) # =     print(soup.div) # soup.tagName  返回的html中第一次出现的tagName标签，返回单数
    print("\n")
    print(soup.find("div",class_="song"))
    print("\n")
    print(soup.findAll("a"))  # find_all("a")都可以
    print("\n")
    print(soup.select(".tang > ul > li > a")[0]) # 返回复数列表  >大于号表示单个层级
    print("\n")
    print(soup.select(".tang > ul a")[0].text)  # 返回复数列表 空格表示多个层级
    print("\n")
    print(soup.select(".tang > ul a")[0].string)  # 返回复数列表 空格表示多个层级print("\n")
    print("\n")
    print(soup.select(".tang > ul a")[0].get_text())  # 返回复数列表 空格表示多个层级
    print("\n")
    print(soup.select(".tang>ul>li>a")[0]["href"])





